Análise estatística
sociolinguística e psicolinguística
Busca de dados em corpus
sociolinguística (cf. material da Profa. Livia Oushiro/UNICAMP)
Visualização gráfica de dados
sociolinguística e psicolinguística
Para fazer buscas na internet, usem a notação [R]
Baixe o programa em https://www.r-project.org/
Baixe a interface em https://www.rstudio.com/
Vejamos na prática
2+2## [1] 4
3+4## [1] 7
sqrt(4)## [1] 2
sqrt(81)## [1] 9
567+876## [1] 1443
54*34## [1] 1836
28-98## [1] -70
sqrt(121)## [1] 11
Vamos carregar os pacotes que iremos usar nesse curso com a função library()
library(readxl) #readxl permite ler tabelas em .txt e .xls
library(ggplot2) #permite gerar gráficos a partir de um conjunto de dadosEsses conjuntos já foram previamente instalados com a função install.packages()
Definindo área de trabalho
session (ou seção) >> set working directory >> choose directory
Dizer ao R que conjunto daquela pasta ele deve ler e que nome ele receberá
nome do conjunto = read.table(“Nome do arquivo.txt”, header = TRUE)
data = read.table("DadosWorkshop.txt", header = TRUE)Clique no conjunto recém-criado na área ENVIRONMENT
Ajuda-nos a ver a relação entre uma variável RESPOSTA e uma variável PREDITORA
ggplot2: pacote de visualização gráfica de dados
Baseado no livro Grammar of Graphics (Leland Wilkinson)
Um gráfico é como se fosse uma frase de uma língua, e cada elemento do gráfico é uma palavra
Comando principal: ggplot()
Indicamos em ggplot() a nossa variável PREDITORA e nossa variável RESPOSTA
Todos os gráficos são gerados através do comando
ggplot(dados, aes(x=PREDITORA, y=RESPOSTA))ggplot(dados, aes(x=PREDITORA, y=RESPOSTA))
ggplot(dados, aes(x=PREDITORA, y=RESPOSTA))
ggplot(data, aes(x=idade, y=peso))ggplot(data, aes(x=idade, y=peso))ggplot(data, aes(x=idade, y=peso))+
geom_point()ggplot(data, aes(x=idade, y=peso))+
geom_point()ggplot(data, aes(x=idade, y=peso))+
geom_point()ggplot(data, aes(x=idade, y=peso))+
geom_point(size=4)ggplot(data, aes(x=idade, y=peso))+
geom_point(size=4)ggplot(data, aes(x=idade, y=peso))+
geom_point(size=4)ggplot(data, aes(x=idade, y=peso))+
geom_point(size=4)ggplot(data, aes(x=idade, y=peso))+
geom_point(size=4, aes(colour=sexo))ggplot(data, aes(x=idade, y=peso))+
geom_point(size=4, aes(colour=sexo))ggplot(data, aes(x=idade, y=peso))+
geom_point(size=4, aes(colour=sexo))+
labs(x="Idade (anos)", y="Peso (Kg)", colour="Gênero")ggplot(data, aes(x=idade, y=peso))+
geom_point(size=4, aes(colour=sexo))+
labs(x="Idade (anos)", y="Peso (Kg)", colour="Gênero")ggplot(data, aes(x=atividadehora, y=sono))+
geom_point(size=4)+
labs(x="Horas de atividade física por semana", y="Horas de sono por dia")ggplot(data, aes(x=atividadehora, y=sono))+
geom_point(size=4)+
labs(x="Horas de atividade física por semana", y="Horas de sono por dia")ggplot(data, aes(x=atividadehora, y=sono))+
geom_point(size=4)+
labs(x="Horas de atividade física por semana", y="Horas de sono por dia")ggplot(data, aes(x=atividadehora, y=sono))+
geom_point(size=4, alpha=0.2)+
labs(x="Horas de atividade física por semana", y="Horas de sono por dia")ggplot(data, aes(x=atividadehora, y=sono))+
geom_point(size=4, alpha=0.2)+
labs(x="Horas de atividade física por semana", y="Horas de sono por dia")ggplot(data, aes(x=idade, y=peso))+
geom_point(size=4, alpha=0.3, aes(colour=sexo))+
labs(x="Idade (anos)", y="Peso (Kg)", colour="Gênero")ggplot(data, aes(x=altura, y=pe))+
geom_point(size=4, alpha=0.3, aes(colour=instituicao))+
labs(x="Altura (cm)", y="Tamanho do calçado")ggplot(data, aes(x=altura, y=peso))+
geom_point(size=4, alpha=0.3, aes(colour=sexo))+
labs(x="Altura (cm)", y="Peso (Kg)")Porcentagem de realização de variável x Idade
Memória de trabalho x Score em testes
Horas de estudo x Score em testes
ggplot(dados, aes(x=PREDITORA, y=RESPOSTA))
ggplot(data, aes(x=instituicao, y=?))ggplot(dados, aes(x=PREDITORA, y=?))
ggplot(data, aes(x=instituicao, y=..count..))OPS!!
Precisamos especificar que gráfico queremos
Precisamos especificar que gráfico queremos
ggplot(data, aes(x=instituicao, y=..count..))+
geom_bar()Precisamos especificar que gráfico queremos
ggplot(data, aes(x=instituicao, y=..count..))+
geom_bar()ggplot(data, aes(x=instituicao, y=..count..))+
geom_bar()+ggplot(data, aes(x=instituicao, y=..count..))+
geom_bar()+
labs(x="Instituição", y="Quantidade")ggplot(data, aes(x=instituicao, y=..count..))+
geom_bar()+
labs(x="Instituição", y="Quantidade")ggplot(data, aes(x=instituicao, y=..count..))+
geom_bar()+
labs(x="Instituição", y="Quantidade")ggplot(data, aes(x=sexo, y=..count..))+
geom_bar()+
labs(x="Sexo", y="Quantidade")ggplot(data, aes(x=sexo, y=..count..))+
geom_bar()+
labs(x="Sexo", y="Quantidade")Nossos entrevistados preferem filme ou série? (não se esqueça de legendar os eixos x e y)
ggplot(data, aes(x=assistir, y=..count..))+
geom_bar()+
labs(x="Preferência por Filme ou Série", y="Quantidade")Nossos entrevistados preferem gatos ou cachorros? (não se esqueça de legendar os eixos x e y)
Nossos entrevistados preferem gatos ou cachorros? (não se esqueça de legendar os eixos x e y)
ggplot(data, aes(x=animal, y=..count..))+
geom_bar()+
labs(x="Preferência por Gato ou Cachorro", y="Quantidade")Uso de duas (ou mais) variantes de uma variável linguística (e.g, nós x a gente)
Motivação da sala após sequência didática específica (também podemos medir continuamente)
Testes de compreensão (e.g., “vi a vizinha do minha irmã que ganhou na loteria” Quem ganhou na loteria?)
Uso de duas (ou mais) variantes de uma variável linguística (e.g, nós x a gente)
Você consegue pensar em situações que influenciem o uso de “nós” ou “a gente”
Será que a instituição onde a pessoa trabalha/estuda prevê se ela fala bolacha ou biscoito?
Primeiro precisamos saber quantas pessoas são da Unicamp ou UFRN
ggplot(data, aes(x=instituicao, y=..count..))+
geom_bar()+
labs(x="Instituição", y="Quantidade de pessoas")Precisamos indicar, nas barras, a distribuição de quem fala bolacha ou biscoito por instituição
ggplot(data, aes(x=instituicao, y=..count..))+
geom_bar()+
labs(x="Instituição", y="Quantidade de pessoas")Precisamos indicar, nas barras, a distribuição de quem fala bolacha ou biscoito por instituição
ggplot(data, aes(x=instituicao, y=..count..))+
geom_bar(aes(fill=dialeto))+
labs(x="Instituição", y="Quantidade de pessoas")ggplot(data, aes(x=instituicao, y=..count..))+
geom_bar(aes(fill=dialeto))+
labs(x="Instituição", y="Quantidade de pessoas")Será que sexo prevê se a pessoa prefere gato ou cachorro?
Primeiro precisamos saber quantas pessoas de cada sexo temos.
ggplot(data, aes(x=sexo, y=..count..))+
geom_bar()+
labs(x="Sexo", y="Quantidade de pessoas")Precisamos indicar, nas barras, a distribuição de quem prefere cachorro ou gato
Precisamos indicar, nas barras, a distribuição de quem prefere cachorro ou gato
ggplot(data, aes(x=sexo, y=..count..))+
geom_bar(aes(fill=animal))+
labs(x="Sexo", y="Quantidade de pessoas")ggplot(data, aes(x=sexo, y=..count..))+
geom_bar(aes(fill=animal))+
labs(x="Sexo", y="Quantidade de pessoas")Será que sexo prevê se a pessoa prefere filme ou série?
Será que sexo prevê se a pessoa prefere filme ou série?
ggplot(data, aes(x=sexo, y=..count..))+
geom_bar(aes(fill=assistir))+
labs(x="Sexo", y="Quantidade de pessoas")Será que o local onde a pessoa mora prevê se ela faz exercício físico?
Será que o local onde a pessoa mora prevê se ela faz exercício físico?
ggplot(data, aes(x=instituicao, y=..count..))+
geom_bar(aes(fill=atividade))+
labs(x="Instituição", y="Quantidade de pessoas")A sintaxe da função é como a sintaxe de uma língua
Cada elemento que inserimos é como uma palavra
Podemos inserir novas palavras indefinidamente
Mudar o fundo
Mostrar porcentagens
Gráficos de linhas, histogramas, boxplots, barras circulares etc.
Gráficos interativos
Portifólio: http://www.r-graph-gallery.com/portfolio/ggplot2-package/
Quero mudar as cores do gráfico e o título da legenda
ggplot(data, aes(x=instituicao, y=..count..))+
geom_bar(aes(fill=atividade))+
scale_fill_manual("Faz atividade física?", values = c("nao" = "light blue", "sim" = "#2b8cbe"), labels=c("Não", "Sim"))+
scale_x_discrete(labels=c("UFRN" = "Natal", "Unicamp" = "Campinas"))+
labs(x="Cidade", y="Quantidade de pessoas")Quero mudar a cor do fundo
ggplot(data, aes(x=instituicao, y=..count..))+
geom_bar(aes(fill=atividade))+
scale_fill_manual("Faz atividade física?", values = c("nao" = "light blue", "sim" = "#2b8cbe"), labels=c("Não", "Sim"))+
scale_x_discrete(labels=c("UFRN" = "UFRN", "Unicamp" = "Unicamp"))+
labs(x="Cidade", y="Quantidade de pessoas")+
theme_bw()Quero colocar um contorno preto nas barras
ggplot(data, aes(x=instituicao, y=..count..))+
geom_bar(color="black", aes(fill=atividade))+
scale_fill_manual("Faz atividade física?", values = c("nao" = "light blue", "sim" = "#2b8cbe"), labels=c("Não", "Sim"))+
scale_x_discrete(labels=c("UFRN" = "UFRN", "Unicamp" = "Unicamp"))+
labs(x="Cidade", y="Quantidade de pessoas")+
theme_bw()O arquivo concordancia.txt tem um pequeno conjunto de dados inventados cuja criação foi baseada nas hipóteses que assumimos sobre a relação entre produção de concordância de número no sintagma nominal e grau de formalidade do discurso
A hipótese geralmente assumida é a de que o contexto formal aumenta a taxa de concordância no sintagma nominal
nome = read.table("nome_do_arquivo.txt", header = TRUE)dados.projeto1 = read.table("concordancia.txt", header = TRUE)ggplot(dados.projeto1, aes(x=contexto, y=..count..))+
geom_bar(aes(fill=concordancia))+
labs(x="Contexto de enunciação", y="Ocorrência de concordância no SN")+
theme_bw()O arquivo iwish.txt tem um pequeno conjunto de dados inventados cuja criação foi baseada nas hipóteses que assumimos sobre a relação entre memória de trabalho e proficiência de leitura
A hipótese é de que memória de trabalho prevê proficiência de leitura, e questiona-se se o modo de apresentação teria algum efeito nessa suposta previsão
nome = read.table("nome_do_arquivo.txt", header = TRUE)dados.projeto2 = read.table("iwish.txt", header = TRUE)ggplot(dados.projeto2, aes(x=pontuacao.memoria, y=pontuacao.leitura))+
geom_point(size = 4, alpha = 0.3, aes(colour=modo.apresentacao))+
labs(x="Pontuação em teste de memória de trabalho", y="Pontuação em teste de leitura")+
theme_bw()